$(function () {
    //用的比较多的一些标签
    let $first = $(".person-info").next().find("select:first");//每页几条的标签
    let $last = $(".person-info").next().find("select:last");//跳转到指定页
    //封装的展示的积分明细方法
    let Points = function (data) {
        $(".person-info>li:first").siblings().remove();
        $(".person-info").append(data.obj.integrals.map(function (obj) {
            let title = obj.file_title;//资源标题
            let str;
            if (title == null) {
                str = `<a class="c1"><span></span><span>&lt;&lt;无资源&gt;&gt;</span></a>`;
            } else {
                str = `<a class="c1 link"><span class="fidHide">${obj.fid}</span><span>${title}</span></a>`;
            }
            return `<li>
                        ${str}
                        <span class="c2">${obj.integral}</span>
                        <span class="c3"> - ${obj.cause}</span>
                        <span class="c4">${obj.causeTime}</span>
                    </li>`
        }).join(""));
        $(".person-info").find(".fidHide").hide();
        //跳转至页面顶部
        $('html, body').stop().animate({
            scrollTop: 0
        });
    }
    //封装的展示积分明细底部按钮方法
    let PointsPaging = function (data) {
        $(".person-info").next().find("a").remove();//移除之前展示的按钮
        $last.empty();//移除跳转到指定页里面的选项
        let page = data.obj.page;//一共多少页
        console.log("page:" + page);
        if (page == 0) {
            $(".person-info").next().find("select").hide();
        } else {
            $(".person-info").next().find("select").show();
        }
        if (page != 0) {
            $last.before(
                `<a class="left"></a>`
            );
        }
        if (page <= 3) {
            //小于等于3页展示全部页
            for (let i = 1; i <= page; i++) {
                $last.before(
                    `<a>${i}</a>`
                );
            }
        } else {
            //大于3页展示前3页
            for (let i = 1; i <= 3; i++) {
                $last.before(
                    `<a>${i}</a>`
                );
            }
        }
        if (page != 0) {
            $first.next().next().addClass("act");//默认展示第一页
            $last.before(
                `<a class="right"></a>`
            );
        }
        for (let i = 1; i <= page; i++) {
            $last.append(
                `<option>${i}/${page}</option>`
            );
        }
    }
    //封装的切换积分明细底部按钮数字的方法
    let PointsPagingToggle = function (flag, which) {
        if (flag == 1) {//按钮要前移
            let text = +$first.next().next().text();
            if (which != null) {
                text = which + 1;
            }
            $(".person-info").next().find("a").remove();//移除之前展示的按钮
            $last.before(
                `<a class="left"></a>`
            );
            for (let i = text - 1; i <= text + 1; i++) {
                $last.before(
                    `<a>${i}</a>`
                );
            }
            $last.before(
                `<a class="right"></a>`
            );
            $first.next().next().addClass("act");
        } else if (flag == 2) {//按钮要后移
            let text = +$last.prev().prev().text();
            if (which != null) {
                text = which - 1;
            }
            $(".person-info").next().find("a").remove();//移除之前展示的按钮
            $last.before(
                `<a class="left"></a>`
            );
            for (let i = text - 1; i <= text + 1; i++) {
                $last.before(
                    `<a>${i}</a>`
                );
            }
            $last.before(
                `<a class="right"></a>`
            );
            $last.prev().prev().addClass("act");
        }
    }
    //页面加载积分明细
    $.get(
        "review/dataPoints",
        {
            rows: $first.val()
        },
        function (data) {
            Points(data);
            PointsPaging(data);
        }
    );
    //积分明细每页条数
    $first.on("change", function () {
        $.get(
            "review/dataPoints",
            {
                rows: $(this).val()
            },
            function (data) {
                Points(data);
                PointsPaging(data);
            }
        );
    });
    //积分明细换页
    $(".person-info").next().on("click", "a", function () {
        let flag = 0;//用来定义一下规则(1:页面按钮需要前移,2:页面按钮需要后移)
        let text = $(this).text();
        if ($(this).attr("class") == null || $(this).attr("class") == "") {//点击的数字按钮
            $(this).addClass("act").siblings("a").removeClass("act");
        } else if ($(this).attr("class").indexOf("left") >= 0) {//点击的上一页
            $.each($(this).siblings("a"), function (i, n) {
                let obj = $(n);
                if (obj.attr("class") == "act") {//获取到当前页对应按钮
                    let t = +obj.text();//当前是第几页
                    if (obj.prev().attr("class") == null || obj.prev().attr("class") == "") {//当前页面按钮不是第一个按钮
                        text = t - 1;
                        obj.prev().addClass("act").siblings("a").removeClass("act");
                        return false;
                    } else if (t > 1) {//当前页面按钮是第一个按钮,但不是第一页
                        text = t - 1;
                        flag = 1;
                        return false;
                    }
                }
            });
        } else if ($(this).attr("class").indexOf("right") >= 0) {//点击的下一页
            $.each($(this).siblings("a"), function (i, n) {
                let obj = $(n);
                if (obj.attr("class") == "act") {//获取到当前页对应按钮
                    let t = +obj.text();//当前是第几页
                    if (obj.next().attr("class") == null || obj.next().attr("class") == "") {
                        text = t + 1;//当前是第几页
                        obj.next().addClass("act").siblings("a").removeClass("act");
                        return false;
                    } else if (t < $last.val().split("/")[1]) {//当前页面按钮是第一个按钮,但不是第一页最后一页
                        text = t + 1;
                        flag = 2;
                        return false;
                    }
                }
            });
        }
        if (text == "") {
            return;
        } else {
            $.each($last.children(), function (i, n) {
                let obj = $(n);
                if (text == obj.text().split("/")[0]) {
                    obj.prop("selected", true);
                }
            });
        }
        $.get(
            "review/dataPoints",
            {
                rows: $first.val(),
                whichPage: text
            },
            function (data) {
                Points(data);
                PointsPagingToggle(flag, null);
            }
        );
    });
    //积分明细跳转至指定页
    $last.on("change", function () {
        let flag = 0;//用来定义一下规则(1:页面按钮需要前移,2:页面按钮需要后移)
        let which = +$(this).val().split("/")[0];//跳转到第几页
        $.each($first.siblings("a"), function (i, n) {
            if ($(n).text() == which) {
                $(n).addClass("act").siblings("a").removeClass("act");
            }
        });
        if (which > $last.prev().prev().text()) {
            flag = 2;
        }
        if (which < $first.next().next().text()) {
            flag = 1;
        }
        $.get(
            "review/dataPoints",
            {
                rows: $first.val(),
                whichPage: $(this).val()
            },
            function (data) {
                Points(data);
                PointsPagingToggle(flag, which);
            }
        );
    });
    //跳转至detail页面
    $(".person-info").on("click", "a", function () {
        if ($(this).attr("class").indexOf("link") >= 0) {
            location.href = "detail.html?id=" + $(this).children("span:first").text();
        }
    });

});